草庐IT

linux - docker运行命令错误

全部标签

ruby - 如何使用 pager 制作 ruby​​ 命令行应用程序?

我正在使用Ruby制作一个命令行工具。它将在屏幕上打印大量文本。目前,我正在使用shell管道(may_app|more)来执行此操作。但我认为最好有一个默认的寻呼机。就像你在执行gitlog时看到的一样。可以使用git--nopagerlog禁用寻呼机。我已经完成了大量的谷歌工作并找到了一颗gem:hirb,但似乎有点矫枉过正。经过多次尝试,我目前正在使用shellwrapper来这样做:#!/bin/bash#xray.rbisthecorescript#doingthemainlogicandwill#outputmanyrowsoftexton#screenXRAY=$HOME

ruby - 如何将 Thor::Group 注册为带参数的子命令

这道题开始于here.但随着我对雷神的了解越来越多,情况发生了很大变化。我正在尝试创建一个带参数的Thor::Group子命令。奇怪的是,如果没有参数,它就可以工作。我可以使用Thor::Group作为子命令吗?这在我输入时有效:foocounterfoo/bin/foomoduleFooclassCLI但是当我输入时这不起作用:foocounter5moduleFooclassCLI','Countupfromtheinput.')endclassCounter:numeric,:desc=>"Thenumbertostartcounting"desc"Prints2numbersb

ruby-on-rails - 检测 Rails 是否正在运行站点

我所在的团队负责管理公司面向公众的云平台。我们拥有大量运行面向互联网的VM的用户群。我想对我们的地址空间进行自动扫描,看看是否有人在运行Rails应用程序,这样我就可以通知他们升级他们的Rails版本,以避免本周出现的严重安全漏洞。我注意到在某些Apache部署中,有一个有用的PassengerHeader:X-Powered-By:PhusionPassenger(mod_rails/mod_rack)2.0.3然而,这并不可靠。我想知道是否有一种可靠的方法来检测在Web服务器后面运行的Rails,无论是使用响应header还是某种可以确定的GET/POST。谢谢!

ruby-on-rails - 运行迁移时出现 Rails 迁移错误?

当我执行rakedb:migrate时,出现以下错误:rakeaborted!Gem::LoadError:Youhavealreadyactivatedrake10.2.2,butyourGemfilerequiresrake10.1.0.Usingbundleexecmaysolvethis.如何解决这个问题? 最佳答案 此错误是由于某些应用程序指定的gem版本可能与您安装的版本不同。尝试使用bundleexecrakedb:migrate。使用bundleexec保证程序在gemfile中指定的环境下运行。

ruby - setter 方法 return self 不起作用,这是一个错误?

这个问题在这里已经有了答案:Isitpossibletohaveclass.property=xreturnsomethingotherthanx?(3个答案)关闭8年前。我想迭代一个字符串数组,并将它们中的每一个分配给类User的一个新实例,我希望我会得到一个User对象数组:classUserdefname=(name)@name=nameselfendendoriginal_array=["aaa","bbb","bbb"]result=original_array.collect{|str|User.new.name=str}但结果是一个字符串数组!putsresult.ins

ruby-on-rails - Heroku 错误 H13

自从我将我的应用程序部署到heroku以来,在过去的几天里,我一直在断断续续地收到这个错误。它发生在我开始使用unicorn作为服务器之前和之后。有时我可以通过使用herokurunrakedb:migrate然后herokurestart让它恢复运行,但这只修复了几个小时,它又坏了。至于网页,它说“应用程序错误”。日志不是很有用,但每次发生此错误时都会显示以下内容:[2014-10-27T21:13:31.675956#2]ERROR--:worker=1PID:8timeout(16s>15s),killing[2014-10-27T21:13:31.731646#14]INFO-

ruby - 更新 gem 时 Docker 包安装缓存问题

我在开发和生产中都使用docker,真正困扰我的一件事是docker缓存的简单性。我的ruby​​应用程序需要bundleinstall来安装依赖项,因此我从以下Dockerfile开始:添加GemfileGemfile添加Gemfile.lockGemfile.lock运行bundleinstall--path/root/bundle所有依赖项都被缓存,并且在我添加新gem之前效果很好。即使我添加的gem只有0.5MB,从头开始安装所有应用程序gem仍然需要10-15分钟。由于依赖项文件夹的大小(大约300MB),然后再花10分钟来部署它。我在node_modules和npm上遇到了

ruby - Ruby Time#dst 如何运行?

这可能是一个愚蠢的问题,表明我对夏令时的基础知识缺乏了解,但根据标题,Time.dst?如何知道时间对象确实是真还是假?大概这必须通过日期和时区的组合来辨别,但这没有意义,因为时区中的低纬度不使用夏令时?因此肯定它必须需要位置来识别#dst??我错过了什么? 最佳答案 为了处理时区和夏令时,Ruby和其他所有东西一样,是callinglocaltime_rCfunction.这将时间放入名为tm的C结构中其中包括一个名为isdst的字段。Ruby正在读取该标志。localtime_r首先通过从全局tzname变量获取您的时区来计算i

ruby - 类完全加载后运行代码

classAdo_something_from_bdefmethod_in_aendendmoduleBdefself.includedbasebase.extendClassMethodsendmoduleClassMethodsdefdo_something_from_bA.class_evaldoalias_method:aliased_method_in_a,:method_in_aendendendendA.send(:include,B)该代码将失败,因为当调用do_somethind_from_b时,method_in_a尚不存在。那么有没有一种方法可以在classA完全

ruby - 如何让 Ruby 每 10 分钟运行一次任务?

我想每10分钟执行一次cron作业,但我的系统只执行1小时。所以我正在寻找一种方法来做到这一点。我看过Timer和sleep但我不确定如何执行此操作,甚至不知道如何实现此操作。 最佳答案 看看http://rufus.rubyforge.org/rufus-scheduler/rufus-scheduler是一个用于调度代码片段(作业)的Rubygem。它了解在特定时间、在特定时间、每x次或仅通过CRON语句运行作业。rufus-scheduler不能替代cron/at,因为它在Ruby内部运行。